Introduction
Apollo is a general purpose audio player for Windows
Key features
Apollo in more detail

Apollo started out as a MP3-player. The main purpose for creating this player is that I wanted to learn Windows coding. MP3-player seemed a nice project since I have a general interest in players. I first started the project in the summer of 1997 but I had to do my compulsory military service so Apollo was delayed one full year.

Since then Apollo has become a more general purpose player. It is recognized by its outstanding MP3 decoding quality, powerful continuous playback support and advanced playlist capabilities. It supports different file formats through so called input plug-ins. Writing an input plug-ins is rather straight forward (see the plug-ins page at Apollo homepage for more info) and thus Apollo can be easily made to support new audio formats. The player routines provide continuous playback or even a crossfade between tracks on all supported formats and with all output types (standard Wave Out, DirectSound and WAV file output). It is possible to direct the output into a WAV file, thus making it possible, for instance, to decode MP3s for writing them onto a CD. The player routines also provide a realtime 16-band equalizer for all file types.

Currently Apollo ships with two input plug-ins: Apollo MPEG decoder and Apollo WAV decoder. The MPEG decoder is capable of handling both MPEG-1 and MPEG-2 audio layer 2 and 3 files (i.e. MP2- and MP3-files). Also Xing VBR MP3s are supported. The MPEG decoder is generally thought to be one of the best as far as sound quality is concerned. The WAV decoder supports RIFF WAV files containing PCM or Microsoft ADPCM coded data. Both plug-ins support Internet streaming.

Apollo also provides support for other type of plug-ins, namely visualization, digital signal processing (DSP) and general purpose plug-ins. Their formats are identical with the corresponding Winamp plug-ins. Thus all existing Winamp plug-ins of these three categories should work with Apollo.

Apollo is perhaps best recognized by its playlist oriented interface. Playlists can be created and modified with standard Windows methods such as drag'n'drop and context menus. The main playlist will be shown as a tree, which may contain nested playlists. This makes it possible to have multiple playlist files open at once, yet having the possibility to handle them as separate entities.

The playlist system will retrieve ID3 and ID3v2 tag information for not only MP3 files but for all supported formats. Based on the tag information — along with common track properties — it is possible to create random entries into playlists. This means that instead of inserting a track into your playlist, you can insert an entry which sets conditions for the track to be played. When the player encounters such an entry while playing the playlist, it picks the track to be played randomly according to the conditions. These so called advanced playlists along with the continuous playback and crossfading make Apollo a considerable choice for some more demanding tasks. There are, for instance, some dance clubs and radio stations that are based on Apollo.